home *** CD-ROM | disk | FTP | other *** search
/ Mission 3 / Mission 3.zip / Mission 3.iso / demovers / scripter / demo / lfilefnd.sic < prev    next >
Text File  |  1998-09-26  |  1KB  |  65 lines

  1. //ACE-SICPAR 4 0055 
  2.  
  3.  
  4. /*
  5.  * Dieser Script sucht alle *.bak in allen übergebenen
  6.  * Laufwerken und Ordnern
  7.  */
  8. proc main(...)
  9. {
  10.   //  options("+trace");
  11.   if (argc) {
  12.     i = 0;
  13.     while (i<argc) {
  14.       folder[argv[i++]] = 1;
  15.     }
  16.   }
  17.   else {
  18.     if (fsel(name, "Suchpfad bestimmen", "*.bak"))
  19.       folder[path(name)] = 1;
  20.     else
  21.       exit(1);
  22.   }
  23.  
  24.   temp = dialog.input("[filefind.sic] Suchmaske:", "*.LZH");
  25.   mask = temp[1];
  26.   if (errno) exit(1);
  27.  
  28.   listbox.createBox(1,1);
  29.  
  30.   // Falls hier aktiviert und unten nicht, dann werden die Treffer direkt dargestellt
  31.   // listbox.openBox(" FILEFIND.SIC ");
  32.  
  33.   do {
  34.     i = 0;
  35.     with (fld in folder) {
  36.       listbox.setInfo(" "+fld);                   // ja: ausgeben
  37.       if (filelist(files, fld)) {                 // Verzeichnis lesen
  38.         ++i;
  39.         for (j = 0; j<files.length; j++) {        // und alles ansehen
  40.           name = files[j, 0];
  41.           if (files[j, 3] & 16) {                 // Ordner?
  42.             name = fld + name + "\\";
  43.             folder[name] = 1;                     // ja: merken
  44.           }
  45.           else {                                  // Datei
  46.             if (match(name, mask))
  47.               listbox.insertItem("-s",fld+name);
  48.           }
  49.         }
  50.       }
  51.       delete(folder, fld);
  52.     }
  53.   } while (i>0);  // solange mindestens ein gültiger Eintrag gefunden wurde
  54.  
  55.   listbox.setInfo(" ");
  56.   listbox.openBox(" FILEFIND.SIC ");
  57.  
  58.   resultat=listbox.handleBox();
  59.  
  60.   listbox.closeBox();
  61.   listbox.freeItems();
  62. }
  63.  
  64.  
  65.